package cn.uyunsky.platform.config.reader;

import java.util.Collection;
import java.util.HashSet;
import java.util.Map;
import java.util.Set;

import cn.uyunsky.platform.config.ConfigReader;
import cn.uyunsky.platform.config.bean.menu.PlTran;
import cn.uyunsky.platform.config.bean.menu.PlTree;
import cn.uyunsky.platform.config.bean.menu.TreeConfig;

public class MenuReader implements ConfigReader<TreeConfig> {

	private TreeConfig config;

	private Set<String> allTranCode;

	@Override
	public void addBean(TreeConfig bean) {
		config = bean;
		allTranCode = new HashSet<String>();
		Collection<PlTran> c = config.getAlltran().values();
		for (PlTran t : c) {
			allTranCode.add(t.getCode());
		}
    }

	/**
	 * 获取所有tran
	 * 
	 * @return 仅仅包含tran的的map
	 */
	public Map<String, PlTran> getAllTran() {
		return config.getAlltran();
	}

	public PlTran getTran(String tranid) {
		return config.getTran(tranid);
	}

	public Set<String> getAllTrancode() {
		return allTranCode;
	}

	public PlTree getTree(String treeid) {
		return config.getTreeMap().get(treeid);
	}

	/**
	 * 获取所有tree列表
	 * 
	 * @return
	 */
	public Map<String, PlTree> getAllTree() {
		return config.getTreeMap();
	}

}
